impulso_unitario <- function(x,k) {
x[] <- 0
x[k+1] <- 1
x
}

escalon_unitario <- function(x,k) {
x[1:k] <- 0
x[(k+1):length(x)] <- 1
x
}

rampa_unitaria <- function(x,k) {
c(array(0,k+1),1:(length(x)-k-1))
}

#input <- impulso_unitario(c(0:19), 5)
#input <- escalon_unitario(c(0:19), 5)
#input <- rampa_unitaria(c(0:19), 5)
# Solución 1 - Rampa unitaria y rampa unitaria invertida
#input <- c(rampa_unitaria(0:10,5),rev(rampa_unitaria(0:8,4)))
# Solución 2 - Combinación lineal de 3 rampas unitarias
input <- rampa_unitaria(0:19,5)-2*rampa_unitaria(0:19,10)+rampa_unitaria(0:19,15)
plot(x=c(0:19), input, pch=21,bg="black", xlab="Muestras", ylab="Amplitud")


